package net.lab1024.sa.admin.module.users.consumablesinventory.domain.form;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

@Data
public class AcceptFrom {


    @Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "id 不能为空")
    private Integer id;


    @Schema(description = "类别", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    private Integer category;

    @Schema(description = "物料代码", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "物料代码 不能为空")
    private String materialCode;

    @Schema(description = "物料名称", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "物料名称 不能为空")
    private String materialName;

    @Schema(description = "规格型号", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    private String specificationModel;

    @Schema(description = "采购数量", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "采购数量 不能为空")
    private Integer purchaseQuantity;

    @Schema(description = "单价（元）", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "单价不能为空")
    private BigDecimal unitPrice;

    @Schema(description = "总价（元）", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "总价（元） 不能为空")
    private BigDecimal totalPrice;

    @Schema(description = "采购途径", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "采购途径 不能为空")
    private String purchaseChannel;

    @Schema(description = "存放地点", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "存放地点 不能为空")
    private String storageLocation;

    @Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "备注 不能为空")
    private String remark;

    @Schema(description = "采购人", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "采购人 不能为空")
    private Integer purchaser;

    @Schema(description = "验收人员", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "验收人员 不能为空")
    private Integer inspector;

    @Schema(description = "仓库管理员", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "仓库管理员 不能为空")
    private Integer warehouseManager;
    @Schema(description = "验收状态", requiredMode = Schema.RequiredMode.REQUIRED)
    private int status;
    @Schema(description = "单位", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    private String unit;
}
